home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 015 / dsklabl2.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1985-02-03  |  3.4 KB  |  81 lines

  1. 100  'PROGRAM FOR PRINTING DISK DIRECTORY
  2. 110  'ON LABELS FOR THE IBM-PC
  3. 120  '   BY JURGEN G. SCHMIDT
  4. 130  '   SAN ANTONIO, TX
  5. 140  '   DECEMBER 1982
  6. 150  '           REQUIRES 3 1/2 X 15/16 INCH LABELS
  7. 151  '
  8. 152  ' *************************************************************
  9. 155  ' * MODIFIED TO INCORPORATE A MORE USER-FRIENDLY INTERFACE BY:*
  10. 156  ' *           LON MARTIN                                      *
  11. 157  ' *           % ROLM CORPORATION                              *
  12. 158  ' *             10000 MARSHALL DRIVE                          *
  13. 159  ' *             LENEXA, KANSAS   66215                        *
  14. 160  ' *             FEBRUARY 1, 1985                              *
  15. 161  ' *************************************************************
  16. 162  '
  17. 170  CLEAR:CLS   'RESET VARIBLES, PREPARE SCREEN
  18. 180  DIM FIL$(100)       'SET ARRAY FOR FILE NAMES
  19. 190  FILES "B:"          'DISPLAY DIRECTORY
  20. 200  LPRINT CHR$(15);           'SET COMPRESSED PRINT
  21. 201  LPRINT CHR$(27)"0";        'SET TO 8 LINES PER INCH
  22. 210  'ROW=POINTER   C=COLUMN POINTER
  23. 220  'I=COLUMN INDEX POINTER   F=FILE POINTER
  24. 230  R=2:I=1:F=1         'INITIALIZE POINTERS
  25. 240  FOR C=I TO I+11     'LOOP TO GET 12 CHARACTERS (1 FILENAME)
  26. 250  A=SCREEN(R,C)       'GET CHARACTER FROM SCREEN AS ASCII CODE
  27. 260  A$=CHR$(A)          'CONVERT CODE TO CHARACTER
  28. 270  FIL$(F)=FIL$(F)+A$  'BUILD FILENAME
  29. 280  IF C=I AND A$=" " THEN 360 'CHECK IF FIRST CHARACTER IS A BLANK
  30. 290  NEXT                'IF IT IS THEN END OF DIRECTORY IS FOUND
  31. 300  '
  32. 310  I=I+18:F=F+1        'INCREMENT FILE POINTER AND INDEX
  33. 320  IF I>72 THEN GOTO 340       'CHECK IF LAST FILENAME IN ROW
  34. 330  GOTO 240            'NEXT FILENAME
  35. 340  R=R+1:I=1           'NEXT ROW RESET INDEX
  36. 350  GOTO 240            'NEXT FILENAME
  37. 355  '
  38. 360  '      PROGRAM NOW OFFERS YOU A CHOICE...ALIGNMENT ROUTINE <Y or N>.
  39. 365  '
  40. 380  PRINT :PRINT :PRINT"                        ******* PRINTER SET UP *******"
  41. 385  PRINT :PRINT"                     PRINTER ALIGNMENT ROUTINE ?  <Y or N>"
  42. 386  C$=INKEY$:IF C$="" OR C$="" THEN 386
  43. 387  IF C$="N" OR C$="n" THEN 600
  44. 388  IF C$="Y" OR C$="y" THEN 390
  45. 389  GOTO 386
  46. 390  '
  47. 400  '
  48. 410  '
  49. 420  '
  50. 430  '
  51. 460  '                          'PRINT LINE-UP
  52. 470  LPRINT "L                TOP OF LABEL                             R"
  53. 480  LPRINT "L                                                         R"
  54. 490  LPRINT "L                                                         R"
  55. 500  LPRINT "L                                                         R"
  56. 510  LPRINT "L                                                         R"
  57. 520  LPRINT "L                BOTTOM OF LABEL                          R"
  58. 530  LPRINT :LPRINT
  59. 540  '
  60. 550  PRINT :PRINT "                     IF LINE-UP IS CORRECT HIT <SPACEBAR>"
  61. 560  PRINT :PRINT "                      OTHERWISE HIT THE 'R' KEY TO RETRY"
  62. 570  PRINT :PRINT
  63. 580  B$=INKEY$:IF B$="R" OR B$="r" THEN GOTO 470 ELSE IF B$=" " THEN 600
  64. 590  GOTO 580
  65. 600  I=1                         'PRINT THE LABELS
  66. 610  L=1
  67. 620  LPRINT FIL$(I) TAB(16) FIL$(I+1) TAB(31) FIL$(I+2) TAB(46) FIL$(I+3)
  68. 630  L=L+1:IF L>6 THEN 650 ELSE 640
  69. 640  I=I+4:IF I>F+4 THEN 670 ELSE GOTO 620
  70. 650  LPRINT :LPRINT :I=I+4:GOTO 610  'SKIP 2 LINES AND START NEXT LABEL
  71. 660  '
  72. 670  FOR K=L TO 8:LPRINT :NEXT           'SPACE TO TOP OF NEXT LABEL
  73. 680  CLS
  74. 690  LOCATE 10,22:PRINT "DO YOU WANT LABELS FOR ANOTHER DISK?"
  75. 700  LOCATE 12,36:PRINT "<Y or N>"
  76. 705  A$=INKEY$:IF A$="" THEN 705
  77. 710  IF A$="Y" OR Y$="y" THEN 720 ELSE 740
  78. 720  CLS:LOCATE 10,18:PRINT "INSERT NEW DISK AND HIT <SPACE BAR> WHEN READY"
  79. 730  A$=INKEY$:IF A$=" " THEN 170 ELSE 730
  80. 740  CLS:SYSTEM
  81.